broadway: Split out getPositionsFromAbsCoord from getPositionsFromEvent
authorAlexander Larsson <alexl@redhat.com>
Fri, 11 Mar 2011 20:28:39 +0000 (21:28 +0100)
committerAlexander Larsson <alexl@redhat.com>
Fri, 11 Mar 2011 20:28:39 +0000 (21:28 +0100)
gdk/broadway/broadway.js

index 7369d70dde608e68e35cc57c5078a2261065d8ca..bed889f1f7ee678939d215e652921111ad6fbf73 100644 (file)
@@ -309,19 +309,25 @@ function get_document_coordinates(element)
     return res;
 }
 
-function getPositionsFromEvent(ev, relativeId) {
+function getPositionsFromAbsCoord(absX, absY, relativeId) {
     var res = Object();
 
-    res.root_x = ev.pageX;
-    res.root_y = ev.pageY;
-    res.win_x = ev.pageX;
-    res.win_y = ev.pageY;
+    res.root_x = absX;
+    res.root_y = absY;
+    res.win_x = absX;
+    res.win_y = absY;
     if (relativeId != 0) {
-       var pos = get_document_coordinates(ev.target);
+       var pos = get_document_coordinates(surfaces[relativeId].canvas);
        res.win_x = res.win_x - pos.x;
        res.win_y = res.win_y - pos.y;
     }
 
+    return res;
+}
+
+function getPositionsFromEvent(ev, relativeId) {
+    var res = getPositionsFromAbsCoord(ev.pageX, ev.pageY, relativeId);
+
     last_x = res.root_x;
     last_y = res.root_y;